// [[ OnflowGenerator File UUID: fed9e20afd814fffa2368954cb4b6ecb  ]]
package com.itdct.onflow.system.role.mapper;

import com.itdct.onflow.core.mapper.BaseMapper;
import com.itdct.onflow.core.vo.KeyLabelValueVo;
import com.itdct.onflow.system.role.entity.SysRoleAccountEntity;
import com.itdct.onflow.system.role.qo.SysRoleAccountSearchQo;
import com.itdct.onflow.system.role.vo.SysRoleAccountDetailVo;
import com.itdct.onflow.system.role.vo.SysRoleAccountListVo;

import org.apache.ibatis.annotations.Mapper;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

import java.util.List;

/**
 * @author DCTANT
 * @date 2025-09-03 15:53:01
 * @version 1.0
 * @description 角色账号关联查询工具
 */
@Mapper
public interface SysRoleAccountMapper extends BaseMapper<SysRoleAccountEntity> {
    @Nullable
    SysRoleAccountDetailVo findById(Long id);

    @NotNull
    List<SysRoleAccountListVo> findByList(SysRoleAccountSearchQo qo);

    @NotNull List<SysRoleAccountEntity> findByAccountId(long id);

    // [[ OnflowGenerator Range (- selectFunctions -) Start ]]
    @NotNull
    List<KeyLabelValueVo> selectRoleIdList(SysRoleAccountSearchQo qo);

    @NotNull
    List<KeyLabelValueVo> selectAccountIdList(SysRoleAccountSearchQo qo);

// [[ OnflowGenerator Range (- selectFunctions -) End ]]

}
